Returns a true/false value if there's no signal on the channel?
Save the value of PHYRegister 0x403
- Set the channel to the channel currently being tested
MaskSet PHYRegister 0x403 with mask 0xFFF8 and set with 5
If the "Use Hardware RSSI Value" ACI Flags flag is set
Read the value of PHYRegister 0x48A, mask with 0x3F
- Otherwise
- Use the saved value instead and mask with 0x3F
- If this value is greater than 32, subtract 64 (clamps to a signed 5 bit value), this is the RSSI Power Level
- Loop up to 100 times
Read PHYRegister 0x47F, right shift by 8 and mask with 0x3F
- If this value is greater than 32, subtract 64 (clamps to a signed 5 bit value)
- If this value is less than the RSSI Power Level
- If the value has been less than the RSSI Power Level 20 times
Restore the value of PHYRegister 0x403 and return true
- If the value has been less than the RSSI Power Level 20 times
- Delay 10 uSec
Restore the value of PHYRegister 0x403 and return false